package fr.gestproj.bean.referentiel;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.annotation.PostConstruct;
import javax.faces.view.ViewScoped;
import javax.inject.Inject;
import javax.inject.Named;

import fr.gestproj.commun.datamodel.DatamodelUtilisateur;
import fr.gestproj.facade.UtilisateurFacade;
import fr.gestproj.model.Utilisateur;
import fr.gestproj.model.dto.DTOColumnModel;

@Named
@ViewScoped
public class BeanReferentielUtilisateur extends AbstractBeanReferentiel<Utilisateur, UtilisateurFacade, DatamodelUtilisateur> implements Serializable {

	@Inject
	private UtilisateurFacade utilisateurFacade;

	public BeanReferentielUtilisateur() {
	}

	@PostConstruct
	private void init() {
		super.init(utilisateurFacade, Utilisateur.class, DatamodelUtilisateur.class);
	}

	@Override
	public List<DTOColumnModel> getDatatableColumns() {
		List<DTOColumnModel> liste = new ArrayList<DTOColumnModel>();
		liste.add(new DTOColumnModel("Email", "email", true, true, String.class));
		liste.add(new DTOColumnModel("Nom", "nom", true, true, String.class));
		liste.add(new DTOColumnModel("Prenom", "prenom", true, true, String.class));
		liste.add(new DTOColumnModel("Date création", "dateCreation", true, false, Date.class));
		return liste;
	}

}
